iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 20
1
Software Development

C++ 30天屠龍記系列 第 20

C++ 30天屠龍記(第20天): 今天講一下libfmt

  • 分享至 

  • xImage
  •  

話說原來一個週末還是沒有足夠時間去整理我的Code的。那麼將來我就先介紹Library吧。將來可能還會改...
我記得我要講很多多媒體lib的....
另外,我最後選擇了Xmake為我的Build tool,因為這比cmake來說,真的現代化太多,將來會補文

C++裏每個library都有自己的脾氣..
也就是說可能有不同的安裝方式
我今天就講一個最簡單的..

安裝方法

libfmt 是一個簡單的輸出庫,比C++本身的cout更快,語法也更簡單。那我先講講怎麼安裝。
大家可以用自己的方法安裝openCV然後在 xmake.lua 加上 add_requires(vcpkg::fmt)add_packagess(vcpkg::fmt) 即可。

-- add modes: debug and release 
    add_rules("mode.debug", "mode.release")
    
    add_requires("vcpkg::fmt")
    
    -- add target
    target("Ist Module")
    
        -- set kind
        set_kind("binary")
    
        -- add files
        add_files("src/*.cpp") 
    
        --add packages
        add_packages("vcpkg::fmt")
    
        -- set lanauges version
        set_languages("c99", "cxx17")

然後可以運行 xmake

Fmt Lib 的用法

基本的C++ file

#include<string>
#include "fmt/format.h"
using namespace std;
using namespace fmt;
int main(int argc, char** argv)
{
    auto hello ="你好?“s;
    print("hello {}\n",hello);
    //輸出 hello 你好?
    
    auto name = "Alan"s;
    print("{0} is playing {1}", name, "balls");
    // 輸出 Alan is playing balls
    
    //也可以將1-n個數值變成String,用以取代stringstream
    auto s = format("{0} {1}     {2}",12,55,22);
    print("{0}",s);
    //輸出是 12 55     22
    
    return 0;
}

今天就完了,大家有沒有覺得有點像Python呢


上一篇
C++ 30天屠龍記(第19天): 今天的新文更新
下一篇
C++ 30天屠龍記(第21天): 一文學懂函數式編程
系列文
C++ 30天屠龍記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言